以下是以此圖為例的互動式CSS按鈕動畫範例:
HTML
<div class="shape-ex1">按鈕</div>
CSS
.shape-ex1{
width: 150px;
height: 40px;
display: block;
text-align: center;
cursor: pointer;
line-height: 40px;
color: #000;
background-color: transparent;
border: 1px solid #000;
transition: all .3s linear;
}
.shape-ex1:hover{
background-color: #000;
color: #fff;
}
HTML
<div class="shape-ex2">按鈕</div>
CSS
.shape-ex2{
width: 150px;
height: 40px;
display: block;
text-align: center;
cursor: pointer;
line-height: 40px;
color: #fff;
background-color: #000;
transition: all .3s linear;
}
.shape-ex2:hover{
background-color: #666;
}
HTML
<div class="shape-ex3"><p>按鈕</p></div>
CSS
.shape-ex3{
width: 150px;
height: 40px;
display: block;
text-align: center;
cursor: pointer;
line-height: 40px;
color: #000;
background-color: transparent;
border: 1px solid #000;
position: relative;
transition: all .3s linear;
}
.shape-ex3 > p{
position: relative;
z-index: 1;
}
.shape-ex3::before{
content: "";
width: 0%;
height: 100%;
display: block;
background-color: #000;
position: absolute;
top: 0;
left: 0;
transition: all .3s ease;
}
.shape-ex3:hover{
color: #fff;
}
.shape-ex3:hover::before{
width: 100%;
}
HTML
<div class="shape-ex4"><p>按鈕</p></div>
CSS
.shape-ex4{
width: 150px;
height: 40px;
display: block;
text-align: center;
cursor: pointer;
line-height: 40px;
color: #000;
background-color: transparent;
border: 1px solid #000;
position: relative;
transition: all .3s linear;
}
.shape-ex4 > p{
position: relative;
z-index: 1;
}
.shape-ex4::before{
content: "";
width: 0%;
height: 100%;
display: block;
background-color: #000;
position: absolute;
top: 0;
right: 0;
transition: all .3s ease;
}
.shape-ex4:hover{
color: #fff;
}
.shape-ex4:hover::before{
width: 100%;
}
HTML
<div class="shape-ex5"><p>按鈕</p></div>
CSS
.shape-ex5{
width: 150px;
height: 40px;
display: block;
text-align: center;
cursor: pointer;
line-height: 40px;
color: #000;
background-color: transparent;
border: 1px solid #000;
position: relative;
transition: all .3s linear;
}
.shape-ex5 > p{
position: relative;
z-index: 1;
}
.shape-ex5::before{
content: "";
width: 100%;
height: 0%;
display: block;
background-color: #000;
position: absolute;
top: 0;
left: 0;
transition: all .3s ease;
}
.shape-ex5:hover{
color: #fff;
}
.shape-ex5:hover::before{
height: 100%;
}
HTML
<div class="shape-ex6"><p>按鈕</p></div>
CSS
.shape-ex6{
width: 150px;
height: 40px;
display: block;
text-align: center;
cursor: pointer;
line-height: 40px;
color: #000;
background-color: transparent;
border: 1px solid #000;
position: relative;
transition: all .3s linear;
}
.shape-ex6 > p{
position: relative;
z-index: 1;
}
.shape-ex6::before{
content: "";
width: 100%;
height: 0%;
display: block;
background-color: #000;
position: absolute;
bottom: 0;
left: 0;
transition: all .3s ease;
}
.shape-ex6:hover{
color: #fff;
}
.shape-ex6:hover::before{
height: 100%;
}